furny.ga.rules
Class FurnitureIntersectionRule

java.lang.Object
  extended by furny.ga.rules.FurnitureIntersectionRule
All Implemented Interfaces:
IValidationRule<FurnLayoutIndividual>

public class FurnitureIntersectionRule
extends java.lang.Object
implements IValidationRule<FurnLayoutIndividual>

This is a IValidationRule implementation that prevents from furnitures intersecting each other.

Since:
12.08.2012
Author:
Stephan Dreyer

Nested Class Summary
 
Nested classes/interfaces inherited from interface ga.core.validation.IValidationRule
IValidationRule.Type
 
Field Summary
private static java.util.logging.Logger LOGGER
           
 
Constructor Summary
FurnitureIntersectionRule()
           
 
Method Summary
 IValidationRule.Type getType()
          Getter for the type of this rule.
 float matchingDegree(FurnLayoutIndividual individual, GAContext context)
          Calculates the matching degree in [0;1] for this rule.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOGGER

private static final java.util.logging.Logger LOGGER
Constructor Detail

FurnitureIntersectionRule

public FurnitureIntersectionRule()
Method Detail

matchingDegree

public float matchingDegree(FurnLayoutIndividual individual,
                            GAContext context)
Description copied from interface: IValidationRule
Calculates the matching degree in [0;1] for this rule. If the given individual does not match the rule, 0 will be returned.

Specified by:
matchingDegree in interface IValidationRule<FurnLayoutIndividual>
Parameters:
individual - The individual to test.
context - The GA context.
Returns:
The matching degree between 0 and 1.

getType

public IValidationRule.Type getType()
Description copied from interface: IValidationRule
Getter for the type of this rule.

Specified by:
getType in interface IValidationRule<FurnLayoutIndividual>
Returns:
The type.